package com.yida.gwj.expend.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.time.LocalDateTime;

/**
 * 公维金资金申请业务信息DTO
 *
 * @author liangp
 * @date 2023-02-08
 */

@ApiModel(description = "公维金资金申请业务信息")
public class GwjMaintenanceFundsBusinessListDTO {

    private Long bizId;

    @ApiModelProperty(value = "业务编码")
    private Long bizNum;

    /**
     * 业务标识表ID
     */
    @ApiModelProperty(value = "业务标识表ID")
    private Integer bizFlagId;

    @ApiModelProperty(value = "是否显示二次补件信息 0.否 1.是")
    private Integer supplementFlag;

    @ApiModelProperty(value = "业务名称")
    private String bizName;

    @ApiModelProperty(value = "地址")
    private String address;

    @ApiModelProperty(value = "联系电话")
    private String phone;

    @ApiModelProperty(value = "业务状态(用于展示)  0:正常 1:回退 2:完结 3:作废 4:退件")
    private Integer serverStatus;

    @ApiModelProperty(value = "业务状态2(用于业务判断)  1:保存 2:提交 3:取件 4:退件 5:审核通过 6:已收件 7:回退 8:办结")
    private Integer status;

    @ApiModelProperty(value = "申请人ID")
    private Long applicantUserId;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "申请时间")
    private LocalDateTime applicantTime;

    @ApiModelProperty(value = "流程ID")
    private Long flowId;

    @ApiModelProperty(value = "步骤ID")
    private Long stepId;

    @ApiModelProperty(value = "申请单位")
    private String applicationUnitName;

    @ApiModelProperty(value = "业务小类")
    private String flowName;

    @ApiModelProperty(value = "步骤名称")
    private String stepName;

    @ApiModelProperty(value = "当前办事人员ID")
    private String currentOperId;

    @ApiModelProperty(value = "当前办事人员名称")
    private String currentOperName;

    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "受理时间")
    private LocalDateTime acceptTime;

    @ApiModelProperty(value = "建档编号")
    private String archiveNum;

    @ApiModelProperty("拨款方式 1：一次拨付；2：二次拨付")
    private Integer appropriationWay;

    public Integer getAppropriationWay() {
        return appropriationWay;
    }

    public void setAppropriationWay(Integer appropriationWay) {
        this.appropriationWay = appropriationWay;
    }

    public String getBizName() {
        return bizName;
    }

    public void setBizName(String bizName) {
        this.bizName = bizName;
    }

    public String getArchiveNum() {
        return archiveNum;
    }

    public void setArchiveNum(String archiveNum) {
        this.archiveNum = archiveNum;
    }

    public Integer getSupplementFlag() {
        return supplementFlag;
    }

    public void setSupplementFlag(Integer supplementFlag) {
        this.supplementFlag = supplementFlag;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Long getBizId() {
        return bizId;
    }

    public void setBizId(Long bizId) {
        this.bizId = bizId;
    }

    public Long getBizNum() {
        return bizNum;
    }

    public void setBizNum(Long bizNum) {
        this.bizNum = bizNum;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public Integer getServerStatus() {
        return serverStatus;
    }

    public void setServerStatus(Integer serverStatus) {
        this.serverStatus = serverStatus;
    }

    public Long getFlowId() {
        return flowId;
    }

    public void setFlowId(Long flowId) {
        this.flowId = flowId;
    }

    public String getApplicationUnitName() {
        return applicationUnitName;
    }

    public void setApplicationUnitName(String applicationUnitName) {
        this.applicationUnitName = applicationUnitName;
    }

    public String getFlowName() {
        return flowName;
    }

    public void setFlowName(String flowName) {
        this.flowName = flowName;
    }

    public String getStepName() {
        return stepName;
    }

    public void setStepName(String stepName) {
        this.stepName = stepName;
    }

    public String getCurrentOperId() {
        return currentOperId;
    }

    public void setCurrentOperId(String currentOperId) {
        this.currentOperId = currentOperId;
    }

    public String getCurrentOperName() {
        return currentOperName;
    }

    public void setCurrentOperName(String currentOperName) {
        this.currentOperName = currentOperName;
    }

    public LocalDateTime getAcceptTime() {
        return acceptTime;
    }

    public void setAcceptTime(LocalDateTime acceptTime) {
        this.acceptTime = acceptTime;
    }

    public Long getApplicantUserId() {
        return applicantUserId;
    }

    public void setApplicantUserId(Long applicantUserId) {
        this.applicantUserId = applicantUserId;
    }

    public LocalDateTime getApplicantTime() {
        return applicantTime;
    }

    public void setApplicantTime(LocalDateTime applicantTime) {
        this.applicantTime = applicantTime;
    }

    public Long getStepId() {
        return stepId;
    }

    public void setStepId(Long stepId) {
        this.stepId = stepId;
    }

    public Integer getBizFlagId() {
        return bizFlagId;
    }

    public void setBizFlagId(Integer bizFlagId) {
        this.bizFlagId = bizFlagId;
    }

    @Override
    public String toString() {
        return "GwjMaintenanceFundsBusinessListDTO{" +
                "bizId=" + bizId +
                ", bizNum=" + bizNum +
                ", bizFlagId=" + bizFlagId +
                ", supplementFlag=" + supplementFlag +
                ", address='" + address + '\'' +
                ", phone='" + phone + '\'' +
                ", serverStatus=" + serverStatus +
                ", status=" + status +
                ", applicantUserId=" + applicantUserId +
                ", applicantTime=" + applicantTime +
                ", flowId=" + flowId +
                ", stepId=" + stepId +
                ", applicationUnitName='" + applicationUnitName + '\'' +
                ", flowName='" + flowName + '\'' +
                ", stepName='" + stepName + '\'' +
                ", currentOperId='" + currentOperId + '\'' +
                ", currentOperName='" + currentOperName + '\'' +
                ", acceptTime=" + acceptTime +
                '}';
    }
}
